package br.edu.ufcg.sig.server.persistence.dao;

import java.util.List;

import org.postgis.Geometry;

import br.edu.ufcg.sig.server.beans.Delict;
import br.edu.ufcg.sig.server.exceptions.DelictNotFoundException;


public interface DelictDAO {
	
	public void saveDelict(Delict delict);
	
	public void removeDelict(Delict delict) throws DelictNotFoundException;
	
	public void updateDelict(Delict delict) throws DelictNotFoundException;
	
	public Delict getDelict(long id) throws DelictNotFoundException;
	
	public List<Delict> getAllDelicts();
		
	public void removeAllDelicts();
	
	public List<String> getHotZones();
	
	public int countCrimesByType(Geometry area, String type);
	
	public List<Delict> getDelictsByDate(String fromDate, String toDate);

}
